package com.pozu.new_retail.dao.model;

import java.io.Serializable;

import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlRootElement;

/**
 * 订单信息
 * @author chao
 * @date 2018年4月19日
 */
@XmlAccessorType(XmlAccessType.FIELD)  
//XML文件中的根标识  
@XmlRootElement(name = "xml")  
public class Order implements Serializable{

	private static final long serialVersionUID = 1L;
	
    /** 小程序类别 **/
    private Integer appId;
	private Integer channelId;//渠道
	
	private String prepayId;//微信订单号与订单号一一对应
	
	private String orderId;//订单id
	
	private Long userId;//下单人
	
	private Integer number;//商品总数量
	
	private Double goodsMoney;//商品原总金额
	
	private Double expressMoney;//快递费用
	
	private String code;//组团码
	
	private Integer level;//组团码等级 普通0微代理1超级2
	
	private Double codeMoney;//组团码折扣的金额
	
	private Integer discount;//分享立减折扣%
	
	private Double discountMoney;//分享立减金额
	
	private double scores;//使用的积分折扣金额
	
	private Double money;//订单实付金额
	
	
	private String receiver;//联系人姓名
	private String phone;//收件人电话
	private String address;//收件人地址
    
	private String expressCompany;//快递公司
	private String expressNumber;//快递号
	

	private Long createdTime;//订单创建时间
	
	private Long updatedTime;//订单修改时间
	
    /** 退款原因 */
    private String refundReason;
    
    /** 退款说明 */
    private String refundMessage;
    
    /** 退款凭证 */
    private String refundImg;
    
    /** 退款金额 */
    private Double refundMoney;
    
    /** 退款状态0默认1申请退款2退款通过3退款被拒(2、3都要进入订单完成并且不可评价) */
    private Integer refundState;
    
	private String refundExpressCompany;//退货的快递公司
	private String refundExpressNumber;//退货的快递号
    
    /** 评价状态:默认0不可评价1可评价2已评价 */
    private Integer commentState;
    
	private Integer orderState;//0未支付1已支付
	
	private Integer state;//默认0取消1删除2
	
	private Integer orderType;//默认值0普通订单1分享订单2预售订单3定金订单
	
	private Double preDeposit;//支付订金
	
	private Long preStartTime;//预售开始时间
	
	/** 最小预定量(大于等于这个数值预售成功,用户支付尾款否则退订金预售失败) **/
    private Integer preMinNumber;
    
    /** 付尾款限制天数(尾款要多少天内付清) **/
    private Integer prePayLimitDays;
	
	private String spbill_create_ip;
	
	private String js_code;
	
	private String openId;
	/** 一级佣金是否结算默认0未结算1已结算 **/
	private Integer chargesFlag;
	/** 一级佣金金额 **/
	private Double chargesMoney;
	/** 二级佣金是否结算默认0未结算1已结算 **/
	private Integer secChargesFlag;
	/** 二级佣金金额 **/
	private Double secChargesMoney;
	
	private Long refundTime;//退款申请时间

	public String getOrderId() {
		return orderId;
	}

	public void setOrderId(String orderId) {
		this.orderId = orderId;
	}

	public Integer getAppId() {
		return appId;
	}

	public void setAppId(Integer appId) {
		this.appId = appId;
	}

	public Integer getChannelId() {
		return channelId;
	}

	public void setChannelId(Integer channelId) {
		this.channelId = channelId;
	}

	public String getPrepayId() {
		return prepayId;
	}

	public void setPrepayId(String prepayId) {
		this.prepayId = prepayId;
	}

	public Long getUserId() {
		return userId;
	}

	public void setUserId(Long userId) {
		this.userId = userId;
	}

	public Integer getNumber() {
		return number;
	}

	public void setNumber(Integer number) {
		this.number = number;
	}

	public Double getGoodsMoney() {
		return goodsMoney;
	}

	public void setGoodsMoney(Double goodsMoney) {
		this.goodsMoney = goodsMoney;
	}

	public Double getExpressMoney() {
		return expressMoney;
	}

	public void setExpressMoney(Double expressMoney) {
		this.expressMoney = expressMoney;
	}

	public String getCode() {
		return code;
	}

	public void setCode(String code) {
		this.code = code;
	}

	public Double getCodeMoney() {
		return codeMoney;
	}

	public void setCodeMoney(Double codeMoney) {
		this.codeMoney = codeMoney;
	}

	public Integer getDiscount() {
		return discount;
	}

	public void setDiscount(Integer discount) {
		this.discount = discount;
	}

	public Double getDiscountMoney() {
		return discountMoney;
	}

	public void setDiscountMoney(Double discountMoney) {
		this.discountMoney = discountMoney;
	}

	public double getScores() {
		return scores;
	}

	public void setScores(double scores) {
		this.scores = scores;
	}

	public Double getMoney() {
		return money;
	}

	public void setMoney(Double money) {
		this.money = money;
	}

	public String getReceiver() {
		return receiver;
	}

	public void setReceiver(String receiver) {
		this.receiver = receiver;
	}

	public String getPhone() {
		return phone;
	}

	public void setPhone(String phone) {
		this.phone = phone;
	}

	public String getAddress() {
		return address;
	}

	public void setAddress(String address) {
		this.address = address;
	}

	public String getExpressCompany() {
		return expressCompany;
	}

	public void setExpressCompany(String expressCompany) {
		this.expressCompany = expressCompany;
	}

	public String getExpressNumber() {
		return expressNumber;
	}

	public void setExpressNumber(String expressNumber) {
		this.expressNumber = expressNumber;
	}

	public Long getCreatedTime() {
		return createdTime;
	}

	public void setCreatedTime(Long createdTime) {
		this.createdTime = createdTime;
	}

	public Long getUpdatedTime() {
		return updatedTime;
	}

	public void setUpdatedTime(Long updatedTime) {
		this.updatedTime = updatedTime;
	}

	public String getRefundReason() {
		return refundReason;
	}

	public void setRefundReason(String refundReason) {
		this.refundReason = refundReason;
	}

	public String getRefundMessage() {
		return refundMessage;
	}

	public void setRefundMessage(String refundMessage) {
		this.refundMessage = refundMessage;
	}

	public String getRefundImg() {
		return refundImg;
	}

	public void setRefundImg(String refundImg) {
		this.refundImg = refundImg;
	}

	public Double getRefundMoney() {
		return refundMoney;
	}

	public void setRefundMoney(Double refundMoney) {
		this.refundMoney = refundMoney;
	}

	public Integer getRefundState() {
		return refundState;
	}

	public void setRefundState(Integer refundState) {
		this.refundState = refundState;
	}

	public String getRefundExpressCompany() {
		return refundExpressCompany;
	}

	public void setRefundExpressCompany(String refundExpressCompany) {
		this.refundExpressCompany = refundExpressCompany;
	}

	public String getRefundExpressNumber() {
		return refundExpressNumber;
	}

	public void setRefundExpressNumber(String refundExpressNumber) {
		this.refundExpressNumber = refundExpressNumber;
	}

	public Integer getCommentState() {
		return commentState;
	}

	public void setCommentState(Integer commentState) {
		this.commentState = commentState;
	}

	public Integer getOrderState() {
		return orderState;
	}

	public void setOrderState(Integer orderState) {
		this.orderState = orderState;
	}

	public Integer getState() {
		return state;
	}

	public void setState(Integer state) {
		this.state = state;
	}

	public Integer getOrderType() {
		return orderType;
	}

	public void setOrderType(Integer orderType) {
		this.orderType = orderType;
	}

	public Double getPreDeposit() {
		return preDeposit;
	}

	public void setPreDeposit(Double preDeposit) {
		this.preDeposit = preDeposit;
	}

	public String getSpbill_create_ip() {
		return spbill_create_ip;
	}

	public void setSpbill_create_ip(String spbill_create_ip) {
		this.spbill_create_ip = spbill_create_ip;
	}

	public String getJs_code() {
		return js_code;
	}

	public void setJs_code(String js_code) {
		this.js_code = js_code;
	}

	public String getOpenId() {
		return openId;
	}

	public void setOpenId(String openId) {
		this.openId = openId;
	}

	public Long getPreStartTime() {
		return preStartTime;
	}

	public void setPreStartTime(Long preStartTime) {
		this.preStartTime = preStartTime;
	}

	public Integer getPreMinNumber() {
		return preMinNumber;
	}

	public void setPreMinNumber(Integer preMinNumber) {
		this.preMinNumber = preMinNumber;
	}

	public Integer getPrePayLimitDays() {
		return prePayLimitDays;
	}

	public void setPrePayLimitDays(Integer prePayLimitDays) {
		this.prePayLimitDays = prePayLimitDays;
	}

	public Integer getChargesFlag() {
		return chargesFlag;
	}

	public void setChargesFlag(Integer chargesFlag) {
		this.chargesFlag = chargesFlag;
	}

	public Double getChargesMoney() {
		return chargesMoney;
	}

	public void setChargesMoney(Double chargesMoney) {
		this.chargesMoney = chargesMoney;
	}

	public Integer getSecChargesFlag() {
		return secChargesFlag;
	}

	public void setSecChargesFlag(Integer secChargesFlag) {
		this.secChargesFlag = secChargesFlag;
	}

	public Double getSecChargesMoney() {
		return secChargesMoney;
	}

	public void setSecChargesMoney(Double secChargesMoney) {
		this.secChargesMoney = secChargesMoney;
	}

	public Integer getLevel() {
		return level;
	}

	public void setLevel(Integer level) {
		this.level = level;
	}

	public Long getRefundTime() {
		return refundTime;
	}

	public void setRefundTime(Long refundTime) {
		this.refundTime = refundTime;
	}

}
